Supported OLE DB Property Groups

The data provider defines the properties that apply to data sources, and properties that provide a read-only set of information about the data provider and the data source.

To obtain a data provider's property values, a data consumer calls one of the methods listed in Table 4-3.

Table 4-3. OLE DB Property Groups Supported by the ADO Provider
Property Group
Method Used to Obtain Values
Data Source
IDBProperties::GetProperties
Data Source Information
IDBProperties::GetProperties
Initialization
IDBProperties::GetProperties
Rowset
ICommandProperties::GetProperties
IRowsetInfo::GetProperties
Session
ISessionProperties::GetProperties

Data Source Property Group

The ADO data provider supports the following property in the DBPROP_DATASOURCE property set. For more information, refer to your Microsoft OLE DB programming documentation.

Table 4-4. OLE DB Data Source Property Supported by the ADO Data Provider
Property Name
Description
DBPROP_CURRENTCATALOG
The name of the current catalog. The data consumer can use the CATALOGS rowset to enumerate catalogs. If unspecified, the data provider uses the default catalog.

Data Source Information Property Group

Table 4-5 lists the properties in the DBPROPSET_DATASOURCEINFO property set supported by the ADO data provider. These properties are in the Data Source Information property group, are read-only properties, and constitute a set of static information about the data provider and data source. For more information about these properties, refer to your Microsoft OLE DB programming documentation.

NOTE: Some values are database-specific and depend on the SequeLink service you are using. These database-specific values are not listed in the table.

Table 4-5. OLE DB Data Source Information Properties Supported by the ADO Data Provider 
Property ID
Default Value and Description
DBPROP_ACTIVESESSIONS
VALUE=0. There is no limit to the number of sessions that can exist at one time.
DBPROP_ASYNCTXNABORT
VALUE=VARIANT_FALSE. The data provider cannot abort transactions asynchronously.
DBPROP_ASYNCTXNCOMMIT
VALUE=VARIANT_FALSE. The data provider cannot commit transactions asynchronously.
DBPROP_BYREFACCESSORS
VALUE=VARIANT_FALSE. The data provider does not support the DBACCESSOR_PASSBYREF flag.
DBPROP_CATALOGLOCATION
The value depends on the SequeLink service you are using.
DBPROP_CATALOGTERM
Specifies the name the data source uses for a catalog.
VALUE="Database"
DBPROP_CATALOGUSAGE
A combination of zero or one or more of the following:
VALUE=DBPROPVAL_CU_DML_STATEMENTS. Catalog names are supported in all Data Manipulation Language (DML) statements.
VALUE=DBPROPVAL_CU_TABLE_DEFINITION. Catalog names are supported in all table definition statements.
VALUE=DBPROPVAL_CU_INDEX_DEFINITION. Catalog names are supported in all index definition statements.
VALUE=DBPROPVAL_CU_PRIVILEGE_DEFINITION. Catalog names are supported in all privilege definition statements.
DBPROP_COLUMNDEFINITION
VALUE=DBPROPVAL_CD_NOTNULL. Columns can be created non-nullable.
DBPROP_CONCATNULLBEHAVIOR
The value depends on the SequeLink service you are using.
DBPROP_CONNECTIONSTATUS
VALUE=DBPROPVAL_CS_INITIALIZED. The data source is in an initialized state and able to communicate with the data store.
DBPROP_DATASOURCENAME
Specifies the name of the data source used during connection. The data source is defined using the DataDirect Configuration Manager. See "Using the ADO Client" for more information about configuring ADO data sources.
DBPROP_DATASOURCEREADONLY
VALUE=VARIANT_FALSE. The data source can be updated.
DBPROP_DBMSNAME
Specifies the name of the data store accessed by the ADO provider. The value depends on the SequeLink service you are using.
DBPROP_DBMSVER
Specifies the version of the DBMS that data provider is currently accessing. This value depends on the SequeLink service you are using.
DBPROP_DSOTHREADMODEL
VALUE=DBPROP_RT_FREETHREAD. The ADO provider supports the free-threading model.
DPROP_GROUPBY
This value depends on the SequeLink service you are using.
DBPROP_HETEROGENEOUSTABLES
VALUE=0. Heterogeneous joins are not supported.
DBPROP_IDENTIFIERCASE
This value depends on the SequeLink service you are using.
DBPROP_MAXINDEXSIZE
This value depends on the SequeLink service you are using.
DBPROP_MAXROWSIZE
VALUE=0. There is no limit on the maximum length of a single row in a table.
DBPROP_MAXROWSIZEINCLUDESBLOB
VALUE=VARIANT_FALSE. The maximum row size does not include the length of all BLOB data.
DBPROP_MAXTABLEINSELECT
VALUE=0. There is no limit on the number of tables allowed in the FROM clause of a Select statement.
DBPROP_MULTIPLEPARAMSETS
VALUE=VARIANT_TRUE. The data provider supports multiple parameter sets at the same time.
DBPROP_MULTIPLERESULTS
VALUE=DBPROPVAL_MR_SUPPORTED. The data provider supports multiple results objects.
DBPROP_MULTIPLESTORAGEOBJECTS
VALUE=VARIANT_TRUE. The data provider supports more than one open storage object at a time.
DBPROP_MULTITABLEUPDATE
VALUE=VARIANT_FALSE. The data provider cannot update rowsets derived from multiple tables.
DBPROP_NULLCOLLATION
The value depends on the SequeLink service you are using.
DBPROP_OLEOBJECTS
VALUE=DBPROPVAL_OO_BLOB. The data provider supports access to BLOBs as structured storage objects.
DBPROP_OPENROWSETSUPPORT
VALUE=DBPROPVAL_ORS_TABLE. The data provider supports opening tables through IOpenRowset.
DBPROP_ORDERBYCOLUMNSINSELECT
This value depends on the SequeLink service you are using.
DBPROP_OUTPUTPARAMETERAVAILABILITY
VALUE=DBPROPVAL_OA_ATROWRELEASE. If a command returns a single result that is a rowset, output parameter data is available at the time the rowset is completely released.
DBPROP_PERSISTENTIDTYPE
VALUE=DBPROPVAL_PT_NAME. The data provider uses this type of DBID when storing (persisting) DBIDs for tables and columns.
DBPROP_PREPAREABORTBEHAVIOR
The value depends on the SequeLink service you are using.
DBPROP_PREPARECOMMITBEHAVIOR
The value depends on the SequeLink service you are using.
DBPROP_PROCEDURETERM
This value depends on the SequeLink service you are using.
DBPROP_PROVIDERFRIENDLYNAME
Specifies the name of data provider, for example, SequeLink for ADO Provider.
DBPROP_PROVIDERNAME
VALUE=slslknn.DLL is the default, where nn is the release level of data provider.
DBPROP_PROVIDEROLEDBVER
Refer to the README file for the supported version of OLE DB supported by the data provider.
DBPROP_PROVIDERVER
Refer to the README file for the supported version.
DBPROP_QUOTEDIDENTIFIERCASE
This value depends on the SequeLink service you are using.
DBPROP_ ROWSETCONVERSIONSONCOMMAND
VALUE=VARIANT_TRUE. Callers can inquire on a command about conversions supported on rowsets generated by the command.
DBPROP_SCHEMATERM
This value depends on the SequeLink service you are using.
DBPROP_SCHEMAUSAGE
The value depends on the SequeLink service you are using.
DBPROP_SERVERNAME
Specifies the name of the server.
DBPROP_SQLSUPPORT
This value depends on the SequeLink service you are using.
DBPROP_STRUCTUREDSTORAGE
VALUE=DBPROPVAL_SS_ISEQUENTIALSTREAM.
DBPROP_ SUBQUERIES
A combination of zero, one, or more of the following:
VALUE=DBPROPVAL_SQ_COMPARISON
VALUE=DBPROPVAL_SQ_CORRELATEDSUBQUERIES. This indicates that all predicates that support subqueries support correlated subqueries.
VALUE=DBPROPVAL_SQ_EXISTS
VALUE=DBPROPVAL_SQ_IN
VALUE=DBPROPVAL_SQ_QUANTIFIED
DBPROP_ SUPPORTEDTXNDDL
This value depends on the SequeLink service you are using.
DBPROP_ SUPPORTEDTXNISOLEVELS
This value depends on the SequeLink service you are using.
DBPROP_ SUPPORTEDTXNISORETAIN
VALUE=0. The data provider supports no transaction isolation retention levels.
DBPROP_TABLETERM
Specifies the name the data source uses for a table.
VALUE="Table"
DBPROP_USERNAME
Specifies a character string with the name used in a particular database. This can be different from the login name.

Initialization Property Group

Table 4-6 provides the supported initialization properties for the ADO provider. The properties are read/write. For more information, refer to the Microsoft OLE DB programming documentation.

Table 4-6. Initialization Properties Supported by the ADO Data Provider  
Property Name
Default Value and Description
DBPROP_AUTH_ PASSWORD
Specifies the password to be used for connecting to the data source or enumerator.
This corresponds to the Password connection attribute. See "Connecting with a Provider String" for more information about connection attributes.
DBPROP_AUTH_PERSIST_SENSITIVE_AUTHINFO
VALUE=VARIANT_FALSE. The data source object cannot store the password or other sensitive authentication information.
DBPROP_AUTH_ USERID
Specifies the User ID to be used for connecting to the data source.
This corresponds to the User ID connection attribute. See "Connecting with a Provider String" for more information about connection attributes,.
DBPROP_INIT_CATALOG
Specifies the name of the initial or default catalog to use when connecting to the data source.
DBPROP_INIT_ DATASOURCE
Specifies the name of the data source or enumerator to which to connect.
DBPROP_INIT_ HWND
Specifies the window handle to use if the data source object or enumerator needs to prompt for additional information.
DBPROP_INIT_LCID
Specifies the preferred locale ID for the consumer.
DBPROP_INIT_ MODE
VALUE=DB_MODE_READ. The default is read-only.
DBPROP_INIT_OLEDBSERVICES
VALUE=0. The data provider does not enable the OLE DB services.
DBPROP_INIT_PROMPT
VALUE=DBPROMPT_COMPLETE. Display a connection dialog only if missing information is needed.
DBPROP_INIT_ PROVIDERSTRING
Specifies a provider-specific string that contains extra initialization information. See "Connecting with a Provider String" for information about using the provider string.
Consumers should use this property only for provider-specific connection information as described in Table 3-2.

Rowset Property Group

OLE DB data consumers can request certain properties to be satisfied by the rowsets that result from an OpenRowset or ICommand::Execute call. Common properties include the set of interfaces to be supported by the resulting rowset.

The ADO data provider supports the IRowsetIdentity interface. This allows the data consumer to determine when two row handles represent the same underlying data.

Table 4-7 provides the properties that are included in the ADO provider properties group. The table shows the initial default values. Some of these properties can be changed at the Command level (through ICommandProperties->SetProperties) or Session level (through IOpenRowset). The resulting rowset will contain different values for these properties.

Table 4-7. Rowset Properties Supported by the ADO Data Provider 
Property Name
Default Value and Description
DBPROP_ABORTPRESERVE
The value depends on the SequeLink service you are using.
DBPROP_ACCESSORDER
VALUE=DBPROPVAL_AO_SEQUENTIALSTORAGEOBJECTS
Columns bound as storage objects can only be accessed in sequential order as determined by the column ordinal.
DBPROP_BLOCKINGSTORAGEOBJECTS
VALUE=VARIANT_FALSE. Instantiated storage objects do not prevent the use of other methods.
DBPROP_BOOKMARKINFO
VALUE=DBPROPVAL_BI_CROSSROWSET (if bookmarks are supported)
VALUE=0 (if bookmarks are not supported)
DBPROP_BOOKMARKS
VALUE=FALSE. The rowset does not support bookmarks.
DBPROP_BOOKMARKSKIPPED
VALUE=VARIANT_FALSE. GetRowsAt, GetApproximatePosition, or FindNextRow returns DB_E_BADBOOKMARK.
DBPROP_BOOKMARKTYPE
VALUE=DBPROPVAL_BMK_NUMERIC. The bookmark type is numeric.
DBPROP_CANFETCHBACKWARDS
VALUE=VARIANT_FALSE. cRows must be non-negative.
DBPROP_CANHOLDROWS
VALUE=VARIANT_FALSE. The rowset might require pending changes to be transmitted to the data store before fetching additional rows.
DBPROP_CANSCROLLBACKWARDS
VALUE=VARIANT_FALSE. IRowsOffset must be non-negative.
DBPROP_CHANGEINSERTEDROWS
VALUE=VARIANT_FALSE. DeleteRows returns a status of DBROWSTATUS_E_NEWLYINSERTED for newly inserted rows, and SetData returns DB_E_NEWLYINSERTED.
DBPROP_COLUMNRESTRICT
Specifies whether access rights are restricted on a column-by-column basis.
VALUE=VARIANT_TRUE. Access rights are restricted on a column-by-column basis.
VALUE=VARIANT_FALSE. Access rights are not restricted on a column-by-column basis.
DBPROP_COMMITPRESERVE
The value is specific to the SequeLink Server you are using.
DBPROP_DELAYSTORAGEOBJECTS
VALUE=VARIANT_FALSE. Storage objects are used in immediate update mode.
DBPROP_IAccessor
VALUE=VARIANT_TRUE
DBPROP_IColumnsInfo
VALUE=VARIANT_TRUE
DBPROP_IColumnsRowset
VALUE=VARIANT_TRUE
DBPROP_IConvertType
VALUE=VARIANT_TRUE
DBPROP_IMultipleResults
VALUE=VARIANT_FALSE
DBPROP_IRowset
VALUE=VARIANT_TRUE
DBPROP_IRowsetChange
VALUE=VARIANT_TRUE
DBPROP_IRowsetIdentity
VALUE=VARIANT_FALSE
DBPROP_IRowsetInfo
VALUE=VARIANT_TRUE
DBPROP_IRowsetLocate
VALUE=VARIANT_TRUE
DBPROP_IRowsetRefresh
VALUE=VARIANT_FALSE
DBPROP_IRowsetScroll
VALUE=VARIANT_FALSE
DBPROP_IRowsetUpdate
VALUE=VARIANT_FALSE
DBPROP_ISequentialStream
VALUE=VARIANT_FALSE
DBPROP_ISupportErrorInfo
VALUE=VARIANT_TRUE
DBPROP_IMMOBILEROWS
VALUE=VARIANT_TRUE. The rowset will not reorder inserted or updated rows.
DBPROP_LITERALBOOKMARKS
VALUE=VARIANT_FALSE. Bookmarks can only be compared with IRowsetLocate::Compare.
DBPROP_LITERALIDENTITY
VALUE=VARIANT_FALSE. The consumer must call IRowsetIdentity::IsSameRow to determine whether two row handles point to the same row.
DBPROP_LOCKMODE
VALUE=DBPROPVAL_LM_NONE. The data provider is not required to lock rows to ensure successful updates.
DBPROP_MAXOPENROWS
Specifies the maximum number of rows that can be active at the same time.
VALUE=4096
DBPROP_MAXPENDINGROWS
VALUE=0. There is no limit on the number of rows that can have pending changes at the same time.
DBPROP_MAXROWS
VALUE=0. There is no limit on the number of rows that can be returned in a rowset.
DBPROP_MEMORYUSAGE
VALUE=0. There is no limit on the amount of memory that the rowset can use.
DBPROP_OTHERINSERT
VALUE=VARIANT_FALSE. The rowset cannot see updates and deletes made by others.
DBPROP_OTHERUPDATEDELETE
VALUE=VARIANT_FALSE. The rowset cannot see updates and deletes made by others.
DBPROP_OWNINSERT
VALUE=VARIANT_FALSE. The rowset cannot see rows inserted by consumers of the rowset unless the command is executed again.
DBPROP_OWNUPDATEDELETE
VALUE=VARIANT_FALSE. The rowset cannot see updates and deletes made by consumers of the rowset unless the command is executed again.
DBPROP_QUICKRESTART
VALUE=VARIANT_TRUE. IRowset::RestartPosition is not expensive to execute and does not execute the command that created the rowset again.
DBPROP_REENTRANTEVENTS
VALUE=VARIANT_TRUE. The data provider supports reentrancy during callbacks to the IRowsetNotify interface.
DBPROP_REMOVEDELETED
VALUE=VARIANT_FALSE. Static cursors do not remove deleted rows.
DBPROP_REPORTMULTIPLECHANGES
VALUE=VARIANT_FALSE. An update or delete always affects a single row or data provider cannot detect whether it affects multiple rows.
DBPROP_RETURNPENDINGINSERTS
VALUE=VARIANT_FALSE. The methods that fetch rows cannot return pending insert rows.
DBPROP_ROWRESTRICT
VALUE=VARIANT_FALSE. Access rights are not restricted on a row-by-row basis.
DBPROP_ROWTHREADMODEL
VALUE=DBPROPVAL_RT_FREETHREAD. The data provider uses the free-threaded model.
DBPROP_SERVERCURSOR
VALUE=VARIANT_FALSE. The data provider determines where to locate the cursor.
DBPROP_STRONGIDENTITY
VALUE=VARIANT_FALSE. There is no guarantee that the handles of newly inserted rows can be compared successfully.
DBPROP_TRANSACTEDOBJECT
VALUE=VARIANT_FALSE. Any object created on the specified column is not transacted.
DBPROP_UNIQUEROWS
VALUE=VARIANT_FALSE. Rows in the rowset may or may not be uniquely identified by their column values.
DBPROP_UPDATABILITY
A combination of zero or one or more of the following:
Value=DBPROPVAL_UP_CHANGE. SetData is supported.
Value=DBPROPVAL_UP_DELETE. DeleteRows is supported.
Value=DBPROPVAL_UP_INSERT. InsertRow is supported.

Session Property Group

Table 4-8 lists the properties the ADO data provider supports in the DBPROPSET_SESSION property set. For more information, refer to your Microsoft OLE DB programming information.

Table 4-8. Session Properties Supported by the ADO Data Provider
Property Name
Default Value and Description
DBPROP_SESS_ AUTOCOMMITISOLEVELS
Specifies the transaction isolation level while in auto-commit mode.
VALUE=NULL